25 research outputs found

    Scalable Overlay Multicast Tree Construction for QoS-Constrained Media Streaming

    Full text link
    Overlay networks have become popular in recent times for content distribution and end-system multicasting of media streams. In the latter case, the motivation is based on the lack of widespread deployment of IP multicast and the ability to perform end-host processing. However, constructing routes between various end-hosts, so that data can be streamed from content publishers to many thousands of subscribers, each having their own QoS constraints, is still a challenging problem. First, any routes between end-hosts using trees built on top of overlay networks can increase stress on the underlying physical network, due to multiple instances of the same data traversing a given physical link. Second, because overlay routes between end-hosts may traverse physical network links more than once, they increase the end-to-end latency compared to IP-level routing. Third, algorithms for constructing efficient, large-scale trees that reduce link stress and latency are typically more complex. This paper therefore compares various methods to construct multicast trees between end-systems, that vary in terms of implementation costs and their ability to support per-subscriber QoS constraints. We describe several algorithms that make trade-offs between algorithmic complexity, physical link stress and latency. While no algorithm is best in all three cases we show how it is possible to efficiently build trees for several thousand subscribers with latencies within a factor of two of the optimal, and link stresses comparable to, or better than, existing technologies

    Extending snBench to Support Hierarchical and Configurable Scheduling

    Full text link
    It is useful in systems that must support multiple applications with various temporal requirements to allow application-specific policies to manage resources accordingly. However, there is a tension between this goal and the desire to control and police possibly malicious programs. The Java-based Sensor Execution Environment (SXE) in snBench presents a situation where such considerations add value to the system. Multiple applications can be run by multiple users with varied temporal requirements, some Real-Time and others best effort. This paper outlines and documents an implementation of a hierarchical and configurable scheduling system with which different applications can be executed using application-specific scheduling policies. Concurrently the system administrator can define fairness policies between applications that are imposed upon the system. Additionally, to ensure forward progress of system execution in the face of malicious or malformed user programs, an infrastructure for execution using multiple threads is described

    Hollow Core, Whispering Gallery Resonator Sensors

    Full text link
    A review of hollow core whispering gallery resonators (WGRs)is given. After a short introduction to the topic of whispering gallery resonators we provide a description of whispering gallery modes in hollow or liquid core WGRs. Next, whispering gallery mode (WGM) sensing mechanisms are outlined and some fabrication methods for microbubbles, microcapillaries and other tubular WGM devices are discussed. We then focus on the most common applications of hollow core WGRs, namely refractive index and temperature sensing, gas sensing, force sensing, biosensing, and lasing. The review highlights some of the key papers in this field and gives the reader a general overview of the current state-of-the-art

    Mutable Protection Domains: Towards a Component-Based System for Dependable and Predictable Computing

    Full text link
    The increasing complexity of software poses signicant challenges for real-time and embedded systems beyond those based purely on timeliness. With embedded sys-tems and applications running on everything from mobile phones, PDAs, to automobiles, aircraft and beyond, an emerging challenge is to ensure both the functional and tim-ing correctness of complex software. We argue that static analysis of software is insufcient to verify the safety of all possible control ow interactions. Likewise, a static sys-tem structure upon which software can be isolated in sepa-rate protection domains, thereby dening immutable bound-aries between system and application-level code, is too in-exible to the challenges faced by real-time applications with explicit timing requirements. This paper, therefore, in-vestigates a concept called mutable protection domains that supports the notion of hardware-adaptable isolation boundaries between software components. In this way, a system can be dynamically recongured to maximize soft-ware fault isolation, increasing dependability, while guar-anteeing various tasks are executed according to specic time constraints. Using a series of simulations on multi-dimensional, multiple-choice knapsack problems, we show how various heuristics compare in their ability to rapidly reorganize the fault isolation boundaries of a component-based system, to ensure resource constraints while simulta-neously maximizing isolation benet. Our ssh oneshot algorithm offers a promising approach to address system dynamics, including changing component invocation pat-terns, changing execution times, and mispredictions in iso-lation costs due to factors such as caching. This material is based upon work supported by the National Science Foundation under Grant Numbers 0615153 and 0720464. Any opinions, ndings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reect the views of the National Science Foundation.

    Predictable Interrupt Management and Scheduling in the Composite Component-based System

    No full text
    This paper presents the design of user-level scheduling hierarchies in the Composite component-based system. The motivation for this is centered around the design of a system that is both dependable and predictable, and which is configurable to the needs of specific applications. Untrusted application developers can safely develop services and policies, that are isolated in protection domains outside the kernel. To ensure predictability, Composite needs to enforce timing control over user-space services. Moreover, it must provide a means by which asynchronous events, such as interrupts, are handled in a timely manner without jeopardizing the system. Towards this end, we describe the features of Composite that allow user-defined scheduling policies to be composed for the purposes of combined interrupt and task management. A significant challenge arises from the need to synchronize access to shared data structures (e.g., scheduling queues), without allowing untrusted code to disable interrupts or use atomic instructions that lock the memory bus. Additionally, efficient upcall mechanisms are needed to deliver asynchronous event notifications in accordance with policy-specific priorities, without undue recourse to schedulers. We show how these issues are addressed in Composite, by comparing several hierarchies of scheduling polices, to manage both tasks and the interrupts on which they depend. Studies show how it is possible to implement guaranteed differentiated services as part of the handling of I/O requests from a network device while avoiding livelock. Microbenchmarks indicate that the costs of implementing and invoking user-level schedulers in Composite are on par with, or less than, those in other systems, with thread switches more than twice as fast as in Linux

    HIRES: a System for Predictable Hierarchical Resource Management

    No full text
    Abstract—This paper presents HIRES, a system structured around predictable, hierarchical resource management (HRM). Applications and different subsystems use customized resource managers that control the allocation and usage of memory, CPU, and I/O. This increased resource management flexibility enables subsystems with different timing constraints to specialize resource management around meeting these requirements. In HIRES, subsystems delegate the management of resources to other subsystems, thus creating the resource management hierarchy. In delegating the control of resources, the subsystem focuses on providing isolation between competing subsystems. To make HRM both predictable and efficient, HIRES ensures that regardless of a subsystem’s depth in the hierarchy, the overheads of resource usage and control remain constant. In doing so, HIRES encourages HRM as a fundamental system design technique. Results show that HIRES has competitive performance with existing systems, and that HRM naturally provides both strong isolation guarantees, and flexible and efficient subsystem control over resources. I
    corecore